package constant

const (
	CmdBet        = "bet"
	CmdCancelBet  = "cancelBet"
	CmdCashout    = "cashOut"
	CmdNewBalance = "newBalance"

	CmdNextServerSeed = "nextServerSeed"

	CmdOnlinePlayers         = "onlinePlayers"
	CmdCurrentBetsInfo       = "currentBetsInfo"
	CmdPreviousRoundInfo     = "previousRoundInfo"
	CmdBetHistory            = "betHistory"
	CmdRoundFairness         = "roundFairness"
	CmdUpdateCurrentBets     = "updateCurrentBets"
	CmdUpdateCurrentCashOuts = "updateCurrentCashOuts"
)

const (
	HandlerServerSeed        = "serverSeedHandler"
	HandlerCashOut           = "cashOutHandler"
	HandlerBet               = "betHandler"
	HandlerCancelBet         = "cancelBetHandler"
	HandlerUpdateBalance     = "updateBalanceHandler"
	HandlerRoundFairness     = "roundFairnessHandler"
	HandlerCurrentBetsInfo   = "currentBetsInfoHandler"
	HandlerPreviousRoundInfo = "previousRoundInfoHandler"
	HandlerBetHistory        = "betHistoryHandler"
	HandlerOpenCell          = "openCellHandler"
	HandleropenCard          = "openCardHandler"
	HandlerChangeCard        = "changeCardHandler"
	HandlerAutoPlay          = "autoPlayHandler"
	HandlerGetHistory        = "getHistoryHandler"
	HandlerRoundDetails      = "roundDetailsHandler"
)

const (
	ResponseBet          = "betResponse"
	ResponseOpenCell     = "openCellResponse"
	ResponseOpenCard     = "openCardResponse"
	ResponseCashOut      = "cashOutResponse"
	ResponseServerSeed   = "getServerSeed"
	ResponseChangeCard   = "changeCardResponse"
	ResponseAutoPlay     = "autoPlayResponse"
	ResponseGetHistory   = "getHistoryResponse"
	ResponseRoundDetails = "roundDetailsResponse"
	ResponseBetHistory   = "betHistoryResponse"
	ResponseDrawLottery  = "drawLotteryResponse"
)

const (
	KeyInit                  = "init"
	KeySettings              = "settings"
	KeyGameConfig            = "gameConfig"
	KeyOnlinePlayers         = "onlinePlayers"
	KeyLimit                 = "limit"
	KeyOffset                = "offset"
	KeyData                  = "data"
	KeyTime                  = "time"
	KeyAmountOfRounds        = "amountOfRounds"
	KeyRoundId               = "roundId"
	KeyRoundBetId            = "roundBetId"
	KeyStageId               = "stageId"
	KeyCurrentMultiplier     = "currentMultiplier"
	KeyRoundsInfo            = "roundsInfo"
	KeyActiveBets            = "activeBets"
	KeyActiveFreeBetsInfo    = "activeFreeBetsInfo"
	KeyEndDate               = "endDate"
	KeyMaxMultiplier         = "maxMultiplier"
	KeyUser                  = "user"
	KeyBalance               = "balance"
	KeyCurrency              = "currency"
	KeyValType               = "valueType"
	KeyBetPrecision          = "betPrecision"
	KeyMaxBet                = "maxBet"
	KeyMinBet                = "minBet"
	KeyDefaultBetValue       = "defaultBetValue"
	KeyMaxUserWin            = "maxUserWin"
	KeyFastBets              = "fastBets"
	KeyBetInputStep          = "betInputStep"
	KeyBetOptions            = "betOptions"
	KeyAutoCashOut           = "autoCashOut"
	KeyMinValue              = "minValue"
	KeyMaxValue              = "maxValue"
	KeyDefaultValue          = "defaultValue"
	KeyProfileImage          = "profileImage"
	KeyAvatar                = "avatar"
	KeyUserId                = "userId"
	KeyUsername              = "username"
	KeyServerSeedSHA256      = "serverSeedSHA256"
	KeyBet                   = "bet"
	KeyBetId                 = "betId"
	KeyPlayerid              = "player_id"
	KeyIsFreeBet             = "isFreeBet"
	KeyIsFreeBetGame         = "isFreeBetGame"
	KeyFreeBets              = "freeBets"
	KeyBetAmount             = "betAmount"
	KeyWinAmount             = "winAmount"
	KeyMultiplier            = "multiplier"
	KeyFairness              = "fairness"
	KeyRoundStartDate        = "roundStartDate"
	KeyPartSeedHexNumber     = "partSeedHexNumber"
	KeyPartSeedDecimalNumber = "partSeedDecimalNumber"
	KeyResult                = "result"
	KeyServerSeed            = "serverSeed"
	KeySeedSHA256            = "seedSHA256"
	KeyPlayerSeeds           = "playerSeeds"
	KeySeed                  = "seed"
	KeyNextSeed              = "nextSeed"
	KeyClientSeed            = "clientSeed"
	KeyCashOutLimit          = "cashoutLimit"

	KeyChangeState     = "changeState"
	KeyRoundChartInfo  = "roundChartInfo"
	KeyNewStateId      = "newStateId"
	KeyTimeLeft        = "timeLeft"
	KeyCurrentPayout   = "currentPayout"
	KeyCurrentGameTime = "currentGameTime"
	KeyCrashMultiplier = "crashMultiplier"
	KeyCrash           = "crash"
	KeyBetsCount       = "betsCount"
	KeyBets            = "bets"
	KeyCashouts        = "cashouts"
	KeyWin             = "win"
	KeyCashout         = "cashout"
	KeyNextTile        = "nextTile"
	KeyCoefficientSum  = "coefficientSum"
	KeyMines           = "mines"
	KeyMine            = "mine"
	KeyMineCells       = "mineCells"
	KeyMinesAmount     = "minesAmount"
	KeyColumns         = "columns"
	KeyRows            = "rows"
	KeyCellNumber      = "cellNumber"
	KeyOpenCell        = "openCell"
	KeySelectedCells   = "selectedCells"
	KeyEndGame         = "endGame"
	KeyBetNumber       = "betNumber"
	KeyBetType         = "betType"
	KeyDiceNumber      = "diceNumber"
	KeyUnder           = "under"
	KeyOver            = "over"
	KeyNumber          = "number"
	KeyNumbers         = "numbers"
	KeySelectedNumbers = "selectedNumbers"
	KeyNumbersResult   = "numbersResult"
	KeyType            = "type"
	KeySm              = "sm"
	KeyMd              = "md"
	KeyLg              = "lg"
	KeyRow             = "row"
	KeyColumn          = "column"
	KeyMaxRows         = "maxRows"
	KeyNextColumn      = "nextColumn"
	KeyColor           = "color"
	KeyColors          = "colors"
	KeyRed             = "red"
	KeyHot             = "hot"
	KeyBlack           = "black"
	KeyIsTwoInRow      = "isTwoInRow"
	KeyTargetColor     = "targetColor"
	KeyResultColors    = "resultColors"

	KeyFlagCard         = "flagCard"
	KeyCard             = "card"
	KeyNextPayout       = "nextPayout"
	KeyLeftButton       = "leftButton"
	KeyRightButton      = "rightButton"
	KeyValue            = "value"
	KeyHighOrSame       = "highOrSame"
	KeyLowOrSame        = "lowOrSame"
	KeySame             = "same"
	KeyLow              = "low"
	KeyHigh             = "high"
	KeyCurrentCardCount = "currentCardCount"
	KeySumCoef          = "sumCoef"

	KeyGreen        = "green"
	KeyYellow       = "yellow"
	KeyPins         = "pins"
	KeyPayout       = "payout"
	KeySlot         = "slot"
	KeyPoint        = "point"
	KeyTargetNumber = "targetNumber"
	KeyTargetAmount = "targetAmount"
	KeyTargetType   = "targetType"

	KeyChips       = "chips"
	KeyEmptyJson   = "{}"
	KeyTimeRound   = "timeRound"
	KeyDetails     = "details"
	KeyWheelNumber = "wheelNumber"

	KeyMusic     = "music"
	KeySound     = "sound"
	KeySecondBet = "secondBet"
	KeyAnimation = "animation"

	KeyCountDown = "cd"
	KeyRemain    = "remain"
	KeyState     = "state"
	KeyNum       = "num"
	KeyGrp       = "group"
)

const (
	CmdCodeOfBet = iota
	CmdCodeOfChangeCard
)

// Aviator State
const (
	UnActive   int32 = 0
	BetState   int32 = 1
	FlyState   int32 = 2
	CrashState int32 = 3
	SettleNext int32 = 4
)

const (
	AvtBetBet     int32 = 1
	AvtBetCancel  int32 = 2
	AvtBetCashOut int32 = 3
)

const (
	NormalStage  = 0
	KillStage    = 1
	GiftStage    = 2
	NormalStatus = 3
	KillStatus   = 4 //杀分
	GiftStatus   = 5 //放分
)

// Roulette State
const (
	RouUnActive     int32 = 0
	RouBetState     int32 = 1
	RouStopBetState int32 = 2
	RouOpenState    int32 = 3
	RouManualState  int32 = 4
)
